Sharing information on a network-based social platform

ABSTRACT

A system and method for sharing information on a network-based social platform is provided. An indication is received from a first user to share information regarding an item on a network-based social platform. The network-based social platform is a platform that allows the first user to communicative couple with other users of the network-based social platform. Profile information of the first user is accessed. A determination of whether the first user is authorized to share the information is made. Based on the first user being authorized, an identifier for the item is added to a list of recommended items that is accessible view the network-based social platform.

RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 13/177,341, filed Jul. 6, 2011 entitled “SharingInformation on a Network-Based Social Platform,” which is a continuationof U.S. patent application Ser. No. 12/767,666, filed Apr. 26, 2010entitled “Sharing Information on a Network-Based Social Platform,” whichis a continuation of U.S. patent application Ser. No. 11/963,399, filedDec. 21, 2007, now U.S. Pat. No. 7,720,722, which claims the prioritybenefit of U.S. Provisional Application No. 60/957,645, filed Aug. 23,2007, all of which are incorporated herein by reference.

FIELD

Embodiments relate generally to the technical field of datacommunications and, in one example embodiment, to communications over anetwork.

BACKGROUND

Applications available on the Internet have progressed from facilitatinga medium of information delivery to a venue for sales and more recentlyto a platform for social networking. Online market places such asAmazon.com and eBay.com are examples of online sellers. Similarly,mySpace.com and Facebook.com are examples of social networking.

BRIEF DESCRIPTION OF DRAWINGS

The present disclosure is illustrated by way of example and notlimitation in the figures of the accompanying drawings, in which likereferences indicate similar elements and in which:

FIG. 1 is a network diagram depicting a system, according to one exampleembodiment, having a client-server architecture;

FIG. 2 is a block diagram illustrating social applications, according toan embodiment;

FIG. 3 is a block diagram illustrating a database, according to anembodiment;

FIG. 4 is a block diagram illustrating marketplace and paymentapplications, according to an embodiment;

FIG. 5 is a high-level entity-relationship diagram, illustrating varioustables stored on a database(s);

FIG. 6 is a block diagram illustrating a user table, according to anembodiment;

FIG. 7 is a block diagram illustrating an items table, according to anembodiment;

FIG. 8 is a block diagram illustrating a method, according to anembodiment, to add an item to a list;

FIG. 9 is a block diagram illustrating a method, according to anembodiment, to block the addition of an item to a list;

FIG. 10 is a block diagram illustrating a method, according to anembodiment, to display a list;

FIGS. 11-15 are diagrams illustrating user interfaces, according to anembodiment; and

FIG. 16 is a block diagram of a machine, according to an exampleembodiment, including instructions to perform any one or more of themethodologies described herein.

DETAILED DESCRIPTION

In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of an embodiment of the present disclosure. It will beevident, however, to one skilled in the art that the present disclosuremay be practiced without these specific details.

In some example embodiments, a system and method for sharing informationon a network-based social platform is illustrated. A request may bereceived from a first user of a network-based social platform to add anitem to a list associated with a second user of the network-based socialplatform. For example, the item may be for sale on a network-basedmarketplace. The list may include one or more items and facilitatewatching the items in real time (e.g., watch list) on the network-basedsocial platform to monitor the progress of an auction or an immediatepurchase of the item on the network-based marketplace. Next, in someembodiments, the system may determine whether the first user isauthorized to add the item to the list based on a predeterminedrelationship between the first user and the second user. For example, apredetermined relationship may have been consensually established by thefirst and second users on the network-based social platform and may, insome embodiments, include the relationship “friend” or “favoritefriend.” Finally, the system may communicate the request to thenetwork-based marketplace which, in turn, adds the item to the listassociated with the second user. Accordingly, in some embodiments, afirst user on a network-based social platform may share informationconcerning an item available on a network-based marketplace with asecond user on a network-based social platform by adding the item to alist used to monitor the item on the network-based social platform. Insome embodiments, the second user may block the first user from addingthe item to the watch list of the second user.

Platform Architecture

FIG. 1 is a network diagram depicting a system 10, according to oneembodiment of the present disclosure, having a client-server and apeer-to peer architecture. The system 10 facilitates shopping activity,in the exemplary form of a network-based marketplace 12, and anetwork-based social platform 13 that communicate over a network 14. Inone embodiment, the network-based marketplace 12 and the network-basedsocial platform 13 communicate in peer-to peer architecture viaprogrammatic interfaces. Further, the network-based marketplace 12 andthe network-based social platform 13 respectively communicate inclient-server architecture with clients. The network-based marketplace12, provides server-side functionality, via the network 14 (e.g., theInternet), to the one or more client machines 20 and 22. Similarly, thenetwork-based social platform 13 provides server-side functionality, viathe network 14 (e.g., the Internet), to the one or more client machines20 and 22. FIG. 1 illustrates, for example, a web client 16 (e.g., abrowser, such as the Internet Explorer browser developed by MicrosoftCorporation of Redmond, Wash. State), and a programmatic client 18executing on respective client machines 20 and 22.

Turning specifically to the network-based social platform 13, anapplication program interface (API) server 25 and a web server 27 arecoupled to, and provide programmatic and web interfaces respectively to,one or more application servers 29. The application servers 29 may hostone or more social applications 31 and a network-based marketplaceinterface module 33 that communicates with a communication module 39 anda processing module 41. The application servers 28 are, in turn, shownto be coupled to one or more databases servers 35 that facilitate accessto one or more databases 37.

The social applications 31 provide a number of social networkingfunctions and services to users that access the network-based socialplatform 13. For example, the social applications 31 may enable a userto store information in a profile that may be viewed at the clientmachines 20, 22 and to selectively grant access to information thatappears on the profile to other users who may also view the profile attheir client machines 20, 22. The social applications 31 may providecriteria that may be employed by a user to grant various levels ofaccess to various levels of users. For example, a first user may accessprofile information associated with a second user responsive to thefirst user achieving the status of “friend” in relation to a seconduser. A user may achieve the status of friend by accepting an invitationfrom another user or by sending a request to a user that subsequentlygrants the request.

The social applications 31 may further enable third party serviceproviders to add “applications” on the network-based social platform 13that are utilized by users to interact with other users. For example, anetwork-based marketplace application may be added by a third partyservice provider in the form of the network-based marketplace interfacemodule 33, the communication module 39, and the processing module 41that may provide market application services in the network-based socialplatform 13 environment and may communicate with the network-basedmarketplace 12.

In one embodiment, a request related to the marketplace application maybe generally processed as follows. The request may originate at theclient machines 20, 22 that communicates the request via programmatic orweb interface services 25, 27 to the social applications 31 that, inturn, communicate the request to the network-based marketplace interfacemodule 33 that, in turn, communicates the request to the communicationmodule 39 and processing module 41 that process the request. Conversely,the communication module 39 and processing module 41 may respond to thesocial applications 31 via the network-based marketplace interfacemodule 33. In some instances processing of the request may requirecommunication with the network-based marketplace 12. In such instancesthe communication module 41 or the processing module 41 may communicatevia the API interface 25 with the network-based marketplace 12.

The network-based social platform 13 may be embodied as FACEBOOK®services, a social utility that connects people with friends and otherswho work, study and live around them provided by Facebook of Palo Alto,Calif.

The web client 16, it will be appreciated, accesses the various socialapplications 31 via the web interface supported by the web server 27.Similarly, the programmatic client 18 accesses the various services andfunctions provided by the social applications 31 via the programmaticinterface provided by the API server 25.

Turning to the network-based marketplace 12, an application programinterface (API) server 24 and a web server 26 are coupled to, andprovide programmatic and web interfaces respectively to, one or moreapplication servers 28. The application servers 28 host one or moremarketplace applications 30 and payment applications 32. The applicationservers 28 are, in turn, shown to be coupled to one or more databasesservers 35 that facilitate access to one or more databases 36.

The marketplace applications 30 provide a number of marketplacefunctions and services to users that access the marketplace 12. Thepayment applications 32 likewise provide a number of payment servicesand functions to users. The payment applications 32 may allow users toquantify for, and accumulate, value (e.g., in a commercial currency,such as the U.S. dollar, or a proprietary currency, such as “points”) inaccounts, and then later to redeem the accumulated value for products(e.g., goods or services) that are made available via the marketplaceapplications 30. While the marketplace and payment applications 30 and32 are shown in FIG. 1 to both form part of the network-basedmarketplace 12, it will be appreciated that, in alternative embodimentsof the present disclosure, the payment applications 32 may form part ofa payment service that is separate and distinct from the marketplace 12.The network-based marketplace 12 may be embodied as eBAY, the world'sonline marketplace, provided by eBay of San Jose, Calif.

Further, while the system 10 shown in FIG. 1 employs a client-serverarchitecture and a peer-to-peer architecture, the present disclosure isof course not limited to such an architecture, and could equally wellfind application in any combination of client-server, distributed, orpeer-to-peer, architecture systems. The various marketplace and paymentapplications 30 and 32 could also be implemented as standalone softwareprograms, which do not necessarily have networking capabilities.

The web client 16, it will be appreciated, accesses the variousmarketplace and payment applications 30 and 32 via the web interfacesupported by the web server 26. Similarly, the programmatic client 18accesses the various services and functions provided by the marketplaceand payment applications 30 and 32 via the programmatic interfaceprovided by the API server 24. The programmatic client 18 may, forexample, be a seller application (e.g., the TurboLister applicationdeveloped by eBay Inc., of San Jose, Calif.) to enable sellers to authorand manage listings of items on the marketplace 12 in an off-linemanner, and to perform batch-mode communications between theprogrammatic client 18 and the network-based marketplace 12.

It will be appreciated that the marketplace applications 30, paymentapplications 32, social applications 31, the network-based marketplaceinterface module 33, the communication module 39 and the processingmodule 41 may execute on a single platform. Accordingly, in oneembodiment, the aforementioned applications/modules may execute on thenetwork-based marketplace 12 and in another embodiment theaforementioned applications/module may execute on the network-basedsocial platform 13.

FIG. 1 also illustrates a third party application 38, executing on athird party server machine 40, as having programmatic access to thenetwork-based marketplace 12 via the programmatic interface provided bythe API server 24. For example, the third party application 38 may,utilizing information retrieved from the network-based marketplace 12,support one or more features or functions on a website hosted by thethird party. The third party website may, for example, provide one ormore promotional, marketplace or payment functions that are supported bythe relevant applications of the network-based marketplace 12.

Social Platform Applications

FIG. 2 is a block diagram illustrating applications that execute on thenetwork-based social platform, according to an embodiment. Thenetwork-based social platform applications include news feedapplications 47, profile applications 49, note applications 51, forumapplications 53, search applications 55, relationship applications 57,network applications 59, communication applications 61, accountapplications 63, photo applications 65, event applications 67, and groupapplications 69.

The news feed applications 47 publish events associated with the userand friends of the user on the network-based social platform 13. Thenews feed applications 47 may publish the events on the user profile ofa user. For example, the news feed applications 47 may publish theuploading of a photo album by one user on the user profile the user andthe user profiles of friends of the user.

The profile applications 49 may maintain user profiles for each of theusers on the network-based social platform 13. Further, the profileapplications 49 may enable a user to restrict access to selected partsof their profile to prevent viewing by other users. The notesapplications 51 may be used to author notes that may be published onvarious user interfaces.

The forum applications 53 may maintain a forum for users to postcomments and display the forum via the profile associated with a user.The user may add comments to the forum, remove comments from the forumand restrict visibility to other users. In addition, other users maypost comments to the forum. The search applications 55 may enable a userto perform a keyword search for users, groups, and events. In addition,the search applications 55 may enable a user to search for content (e.g.favorite movies) on profiles accessible to the user.

The relationship applications 57 may maintain relationship informationfor the users. The network applications 59 may facilitate the additionof social networks by a user, the social networks based on a school,workplace, or region or any social construct for which the user mayprove an affiliation. The communication applications 61 may processincoming and outgoing messages, maintain an inbox for each user,facilitate sharing of content, facilitate interaction among friends(e.g., poking), process requests, process events, process groupinvitations and process communicating notifications.

The account applications 63 may provide services to facilitateregistering, updating, and deleting user accounts. The photoapplications 65 may provide services to upload photographs, arrangephotographs, set privacy options for albums and tag photographs withtext strings. The event applications 67 provide services to createevents, review upcoming events, and review past events. The groupapplications 69 may be used to maintain group information, display groupinformation, and navigate to groups.

FIG. 3 is a block diagram illustrating a database 37, according to anembodiment, at a network-based social platform 13. The database 37 isshown to include social platform user profile information 42 that storesuser profile information for each user on the network-based socialplatform 13. The user profile information 42 may include informationrelated to the user and specifically may include relationshipinformation 43 and block information 45. The relationship information 43may store a predetermined relationship between the user associated withthe user profile information 42 and other users on the network-basedsocial platform 13. For example, a first user, may be designated a“friend,” or “favourite friend,” etc. with a second user, the first userassociated with the user profile information 42 and the respectivedesignations associated with increasing levels of disclosure between thefirst user and second user. The block information 45 may store aconfigured preference of the user to block the addition of an item byother users to the watch list associated with the user.

Marketplace and Payment Applications

FIG. 4 is a block diagram illustrating multiple marketplace and paymentapplications 30, 32 that, in one exemplary embodiment of the presentdisclosure, are provided as part of the network-based marketplace 12.The marketplace 12 may provide a number of listing and price-settingmechanisms whereby a seller may list goods or services for sale, a buyercan express interest in or indicate a desire to purchase such goods orservices, and a price can be set for a transaction pertaining to thegoods or services. To this end, the marketplace applications 30 areshown to include one or more auction applications 44 which supportauction-format listing and price setting mechanisms (e.g., English,Dutch, Vickrey, Chinese, Double, Reverse auctions etc.). The variousauction applications 44 may also provide a number of features in supportof such auction-format listings, such as a reserve price feature wherebya seller may specify a reserve price in connection with a listing and aproxy-bidding feature whereby a bidder may invoke automated proxybidding.

A number of fixed-price applications 46 support fixed-price listingformats (e.g., the traditional classified advertisement-type listing ora catalogue listing) and buyout-type listings. Specifically, buyout-typelistings (e.g., including the Buy-It-Now (BIN) technology developed byeBay Inc., of San Jose, Calif.) may be offered in conjunction with anauction-format listing, and allow a buyer to purchase goods or services,which are also being offered for sale via an auction, for a fixed-pricethat is typically higher than the starting price of the auction.

Store applications 48 allow sellers to group their listings within a“virtual” store, which may be branded and otherwise personalized by andfor the sellers. Such a virtual store may also offer promotions,incentives and features that are specific and personalized to a relevantseller.

Reputation applications 50 allow parties that transact utilizing thenetwork-based marketplace 12 to establish, build, and maintainreputations, which may be made available and published to potentialtrading partners. Consider that where, for example, the network-basedmarketplace 12 supports person-to-person trading, users may have nohistory or other reference information whereby the trustworthiness andcredibility of potential trading partners may be assessed. Thereputation applications 50 allow a user, for example through feedbackprovided by other transaction partners, to establish a reputation withinthe network-based marketplace 12 over time. Other potential tradingpartners may then reference such a reputation for the purposes ofassessing credibility and trustworthiness.

Personalization applications 52 allow users of the marketplace 12 topersonalize various aspects of their interactions with the marketplace12. For example a user may, utilizing an appropriate personalizationapplication 52, create a personalized reference page at whichinformation regarding transactions to which the user is (or has been) aparty may be viewed. Further, a personalization application 52 mayenable a user to personalize listings and other aspects of theirinteractions with the marketplace 12 and other parties.

In one embodiment, the network-based marketplace 12 may support a numberof marketplaces that are customized, for example, for specificgeographic regions. A version of the marketplace 12 may be customizedfor the United Kingdom, whereas another version of the marketplace 12may be customized for the United States. Each of these versions mayoperate as an independent marketplace, or may be customized (orinternationalized) presentations of a common underlying marketplace byinternationalization application 54.

Navigation of the network-based marketplace 12 may be facilitated by oneor more navigation applications 56. For example, a search applicationenables key word searches of listings published via the marketplace 12.A browse application allows users to browse various category, catalogue,or inventory data structures according to which listings may beclassified within the marketplace 12. Various other navigationapplications may be provided to supplement the search and browsingapplications.

In order to make listings, available via the network-based marketplace12, as visually informing and attractive as possible, the marketplaceapplications 30 may include one or more imaging applications 58utilizing which users may upload images for inclusion within listings.An imaging application 58 also operates to incorporate images withinviewed listings. The imaging applications 58 may also support one ormore promotional features, such as image galleries that are presented topotential buyers. For example, sellers may pay an additional fee to havean image included within a gallery of images for promoted items.

Listing creation applications 60 allow sellers conveniently to authorlistings pertaining to goods or services that they wish to transact viathe marketplace 12, and listing management applications 62 to allowsellers to manage such listings. Specifically, where a particular sellerhas authored and/or published a large number of listings, the managementof such listings may present a challenge. The listing managementapplications 62 provide a number of features (e.g., auto-relisting,inventory level monitors, etc.) to assist the seller in managing suchlistings. One or more post-listing management applications 64 alsoassist sellers with a number of activities that typically occurpost-listing. For example, upon completion of an auction facilitated byone or more auction applications 44, a seller may wish to leave feedbackregarding a particular buyer. To this end, a post-listing managementapplication 64 may provide an interface to one or more reputationapplications 50, so as to allow the seller conveniently to providefeedback regarding multiple buyers to the reputation applications 50. Inaddition, the post listing management applications 64 may facilitatetracking and organization of listings for a user by maintainingidentified listings in lists. For example, the lists may include watchinformation in the form of identified items that are offered for sale onthe network-based marketplace 12.

Dispute resolution applications 66 provide mechanisms whereby disputesarising between transacting parties may be resolved. For example, thedispute resolution applications 66 may provide guided procedures wherebythe parties are guided through a number of steps in an attempt to settlea dispute. In the event that the dispute cannot be settled via theguided procedures, the dispute may be escalated to a third partymediator or arbitrator.

A number of fraud prevention applications 68 implement various frauddetection and prevention mechanisms to reduce the occurrence of fraudwithin the marketplace 12.

Messaging applications 70 are responsible for the generation anddelivery of messages to users of the network-based marketplace 12, suchmessages for example advising users regarding the status of listings atthe marketplace 12 (e.g., providing “outbid” notices to bidders duringan auction process or to provide promotional and merchandisinginformation to users).

Merchandising applications 72 support various merchandising functionsthat are made available to sellers to enable sellers to increase salesvia the marketplace 12. The merchandising applications 80 also operatethe various merchandising features that may be invoked by sellers, andmay monitor and track the success of merchandising strategies employedby sellers.

The network-based marketplace 12 itself, or one or more parties thattransact via the marketplace 12, may operate loyalty programs that aresupported by one or more loyalty/promotions applications 74. Forexample, a buyer may earn loyalty or promotions points for eachtransaction established and/or concluded with a particular seller, andbe offered a reward for which accumulated loyalty points can beredeemed.

Data Structures

FIG. 5 is a high-level entity-relationship diagram, illustrating varioustables 90 that may be maintained within the databases 36, and that areutilized by and support the marketplace and payment applications 30 and32. A user table 92 contains a record for each registered user of thenetwork-based marketplace 12, and may include identifier, address andfinancial instrument information pertaining to each such registereduser. A user may, it will be appreciated, operate as a seller, a buyer,or both, within the network-based marketplace 12. In one exemplaryembodiment of the present disclosure, a buyer may be a user that hasaccumulated value (e.g., commercial or proprietary currency), and isthen able to exchange the accumulated value for items that are offeredfor sale by the network-based marketplace 12.

The tables 90 also include an items table 94 in which are maintaineditem records (e.g., item information) for goods and services that areavailable to be, or have been, transacted via the marketplace 12. Eachitem record within the items table 94 may furthermore be linked to oneor more user records within the user table 92, so as to associate aseller and one or more actual or potential buyers with each item record.

A transaction table 96 contains a record for each transaction (e.g., apurchase transaction) pertaining to items for which records exist withinthe items table 94. An order table 98 is populated with order records,each order record being associated with an order. Each order, in turn,may be with respect to one or more transactions for which records existwithin the transactions table 96.

Bid records within a bids table 100 each relate to a bid received at thenetwork-based marketplace 12 in connection with an auction-formatlisting supported by an auction application 44. A feedback table 102 isutilized by one or more reputation applications 50, in one exemplaryembodiment, to construct and maintain reputation information concerningusers. In one embodiment, the reputation information may includefeedback records associated with transactions. A history table 104maintains a history of transactions to which a user has been a party.One or more attributes tables 106 record attribute informationpertaining to items for which records exist within the items table 94.Considering only a single example of such an attribute, the attributestables 106 may indicate a currency attribute associated with aparticular item, the currency attribute identifying the currency of aprice for the relevant item as specified in by a seller.

FIG. 6 is a block diagram illustrating a user table 92, according to anembodiment. The user table 92 includes a user information entry 160 foreach user on the network-based marketplace 12. Each user informationentry 160 may specifically include watch information 162. The watchinformation 162 includes item identifiers that correspond to items forsale on the network-based marketplace 12 (e.g., watch list). Forexample, the user may be interested in a listing for a book that iscurrently being auctioned. To monitor the sale of the book the user mayadd the book to the watch list associated with the user. In addition,the user may add the item to the watch list of another user.

FIG. 7 is a block diagram illustrating an items table 94, according toan embodiment. The items table 94 includes item information 170 for eachitem on the network-based marketplace 12. For example, the iteminformation 170 may store a title, a description, a photograph, or anyother information or content descriptive of goods or services that maybe offered for sale on the network-based marketplace 12. The iteminformation 170 is specifically shown to include auction information 172and purchase information 174. The auction information 172 may includeinformation related to the auctioning of the item (e.g., minimum bid,current bid, highest bid, start time of auction, end time of auction,etc.). The purchase information 174 may include information related tothe purchase of the item (e.g., purchase price). In one embodiment, anitem offered for sale on the network-based marketplace 12 may beacquired by submitting the highest bid in an auction or by paying apredetermined purchase price.

FIG. 8 is a block diagram illustrating a method 180, according to anembodiment, to add an item for sale on a network-based marketplace to alist of another user on a network-based social platform. Illustrated onthe right is the network-based marketplace 12. Illustrated in the middleis the network-based social platform 13 and illustrated on the left isthe client machine 20.

A first user may have searched for iPhones offered for sale on thenetwork-based marketplace 12 by using a search facility provided by themarketplace application on the network-based social platform 13. Afteridentifying an iPhone of particular interest in the search results, themethod 180 may commence, at operation 182, with the first userrequesting the iPhone (e.g., item) be added to the watch list of asecond user on the network-based social platform 13. At operation 184,at the network-based social platform 13, the request may be received bythe social applications 31 that forward the request to the network-basedmarketplace interface module 33 that forwards the request to thecommunication module 39.

At decision operation 186, the processing module 41 may determinewhether the user is authorized to add the item to the list associatedwith the second user. For example, the processing module 41 maydetermine whether relationship information 43 for the first useridentifies a predetermined relationship with the second user as being a“friend” or a “favourite friend.” If the second user is determined to bea “friend” or a “favourite friend” then a branch is made to decisionoperation 188. Otherwise processing ends.

At decision operation 188, the processing module 41 determines whetherthe second user has blocked the addition of items to the list (e.g.,watch list) associated with the second user. For example, the processingmodule 41 may determine whether block information 45 associated with thesecond user prohibits addition of items to the list of the second user.If the block information 45 blocks additions to the list then processingends. Otherwise processing continues at operation 190. At operation 190,the communication module 39 communicates the request to add the iPhoneto the network-based marketplace 12.

At operation 192, the network-based marketplace 12 receives the requestto add the iPhone and at operation 194 the network-based marketplace 12adds the corresponding item identifier to the watch list associated withthe second user. For example, the network-based marketplace 12 may storethe item identifier in the watch information 162 associated with thesecond user.

FIG. 9 is a block diagram illustrating a method 200, according to anembodiment, to block the addition of an item to a list. Illustrated onthe right is the network-based marketplace 12. Illustrated in the middleis the network-based social platform 13 and illustrated on the left isthe client machine 20. The method 200 commences at operation 202 withthe user at the client machine 20 requesting that additions of items tothe watch list associated with the user be blocked.

At operation 204, at the network-based social platform 13, the requestis received by the social applications 31 that forward the request tothe network-based marketplace interface module 33 that forwards therequest to the communication module 39. At operation 206 the processingmodule stores the request to block additions for the user and processingends. For example, the processing module 41 may store the request in theblock information 45 associated with the user. In another embodiment,the block information 45 may be stored as user information 160 at thenetwork-based marketplace 12.

FIG. 10 is a block diagram illustrating a method 220, according to anembodiment, to display a list. Illustrated on the right is thenetwork-based marketplace 12. Illustrated in the middle is thenetwork-based social platform 13 and illustrated on the left is theclient machine 20. The method 220 commences at operation 222 with theuser at the client machine 20 requesting their watch list to bedisplayed.

At operation 224, at the network-based social platform 13, the requestis received by the social applications 31 that forward the request tothe network-based marketplace interface module 33 that forwards therequest to the communication module 39 and at operation 226, thecommunication module 39 forwards the request to the network-basedmarketplace 12.

At operation 228, the network-based marketplace 12 receives the requestand at operation 230 the network-based marketplace 12 communicates therequested items to the network-based social platform 13. For example,the network-based marketplace 12 may retrieve the item identifiers fromthe watch information 162 associated with the requesting user.

At operation 232, the communication module 39, at the network-basedsocial platform 13, receives the item identifiers and at operation 234the communication module 39 may communicate a user interface thatincludes the items (e.g., watch list) to the social applications 31that, in turn, communicate the user interface that includes therequested items (e.g., watch list), via the web interface 27, to theclient machine 20 where it is displayed at operation 236.

FIG. 11 is a diagram illustrating a user interface 250, according to anembodiment. The user interface 250 displays search results that weregenerated in response to a user entering a search request (e.g.,keyword) received by the network-based social platform 13. The userinterface 250 includes user interface elements 252 that relate adescription of the user that requested the search, the keywords enteredby the user (e.g., iPhones), and a count of search results. For example,“John Doe” requested a search for “iPhones” and received search resultsincluding 123455 items. Further, the user interface 250 includes searchresults 254 in the form of user interface elements 256 that respectivelycorrespond to items. Each user interface element 256 includes a userinterface elements 258, 260, and 262. The user interface element 258 maybe selected to add the corresponding item to the watch list associatedwith the user that requested the search results (e.g., John Doe). Theuser interface element 260 may be selected to add the item to the watchlist of one or more user, as illustrated on FIG. 12. The user interfaceelement 262 may be selected to view the item on a user interface that isserved by the network-based marketplace 12. The user interface served bythe network-based marketplace 12 may for example include iteminformation 170 describing the item, auction information 112 thatenables the user to enter a bid in an auction of the item, and purchaseinformation 174 that enables the user to purchase the item.

FIG. 12 is a diagram illustrating a user interface 270, according to anembodiment. The user interface 270 includes user interface elements 272that describes the identity of the present user (e.g., John Doe) fromthe point of view of the network-based social platform 13 based on, forexample, a user name and password. The user interface 270 furtherincludes user interface elements 274 that describe a item (e.g., iPhone)for sale on the network-based marketplace 12, and user interfaceelements 276 that respectively correspond to “friends” of the user(e.g., John Doe).

The user interface elements 278 may be selected to click through to thenetwork-based marketplace 12 and purchase the item (e.g., iPhone) on theuser interface 270.

Each user interface element 276 may include user interface elements 280,282 and 284. The user interface element 280 may be an image representinga user on the network-based social platform 13 and the user interfaceelement 282 may be the name of the user. The user interface element 284maybe a checkbox that may be selected to add the item to the watchlist(s) of the identified user(s). Further, a single request to add theitem may be associated multiple selected checkboxes. Accordingly,selection of checkboxes associated with a first and second user mayresult in the addition of the identified item to the watch lists of thefirst and second user responsive to a selection of the user interfaceelement 288. Further, the user interface element 282 may be selected toview the watch list associated with the identified user.

The user interface 270 further includes an input box 286 to receive analphanumeric string, such as a personal note, from the first user (e.g.,John Doe). The processing module 41 may receive the alphanumeric stringand associate the alphanumeric string with the item (e.g., shoppinginformation) on the watch lists identified via the checkboxes 284.

FIG. 13 is a diagram illustrating a user interface 290, according to anembodiment. The user interface 290 includes user interface elements 292that describes the identity of the present user (e.g., Jane Doe) fromthe point of view of the network-based social platform 13 based on, forexample, a user name and password. The user interface 290 furtherincludes user interface elements 294 that may be a count of items on thewatch list of the present user (e.g., Jane Doe), and one or more userinterface elements 296 respectively describing items (e.g., iPhone)being watched. Each user interface element 296 may include a note 298associated with an alphanumeric string from another user that added theitem to the watch list. In one embodiment the note may be displayed onlyto the owner (e.g., Jane Doe) of the watch list. Each user interfaceelement may further include a user interface element 300 that may beselected to click through to the network-based marketplace 12 andpurchase the item or enter a bid for the item.

FIG. 14 is a diagram illustrating a user interface 310, according to anembodiment, to block adding items to a watch list. The user interface310 may include mutually exclusive checkboxes 312 and 314 torespectively unblock or block the addition of items to the watch list ofthe user (e.g., Jane Doe).

FIG. 15 is a diagram illustrating a user interface 320, according to anembodiment, of a user profile. The user profile 320 may include userprofile information 42 for the user featured by the user profile. Alluser profile information 42 may be displayed to the user featured by theprofile (e.g., Joe Doe). A portion of the user profile information 42may be displayed to others users according to a status (e.g., “friend,”“favorite friend”). The profile information 42 includes user information324, event information 326, related user information 328 and postedinformation 330.

The user information 324 includes information about the user. The eventinformation 326 includes events 327 that may be of interest to the user.In one embodiment an event may be an action performed by a “friend” or“favorite friend” of the user. For example, the event information 326may include an event 327 that describes the addition of an item by afriend “John Doe” to a watch list of a friend “Jane Doe.” Each event 327may include a user interface element 329 that may be selected to add theitem to the watch list of the user associated with the profile (e.g.,“Joe Doe”) and a user interface element 331 that may be selected toauthor a message that is communicated to the user that added the item(e.g., “John Doe”).

FIG. 16 is a diagrammatic representation of a machine in the exampleform of a computer system 1000 within which a set of instructions, forcausing the machine to perform any one or more of the methodologiesdiscussed herein, may be executed. In alternative embodiments, themachine operates as a standalone device or may be connected (e.g.,networked) to other machines. In a networked deployment, the machine mayoperate in the capacity of a server or a client machine in server-clientnetwork environment, or as a peer machine in a peer-to-peer (ordistributed) network environment. The machine may be a server computer,a client computer, a personal computer (PC), a tablet PC, a set-top box(STB), a Personal Digital Assistant (PDA), a cellular telephone, a webappliance, a network router, switch or bridge, or any machine capable ofexecuting a set of instructions (sequential or otherwise) that specifyactions to be taken by that machine. Further, while only a singlemachine is illustrated, the term “machine” shall also be taken toinclude any collection of machines that individually or jointly executea set (or multiple sets) of instructions to perform any one or more ofthe methodologies discussed herein.

The example computer system 1000 includes a processor 1002 (e.g., acentral processing unit (CPU) a graphics processing unit (GPU) or both),a main memory 1004 and a static memory 1006, which communicate with eachother via a bus 1008. The computer system 1000 may further include avideo display unit 1010 (e.g., a liquid crystal display (LCD) or acathode ray tube (CRT)). The computer system 1000 also includes analphanumeric input device 1012 (e.g., a keyboard), a cursor controldevice 1014 (e.g., a mouse), a disk drive unit 1016, a signal generationdevice 1018 (e.g., a speaker) and a network interface device 1020.

The disk drive unit 1016 includes a machine-readable medium 1022 onwhich is stored one or more sets of instructions (e.g., software 1024)embodying any one or more of the methodologies or functions describedherein. The software 1024 may also reside, completely or at leastpartially, within the main memory 1004 and/or within the processor 1002during execution thereof by the computer system 1000, the main memory1004 and the processor 1002 also constituting machine-readable media.

The software 1024 may further be transmitted or received over a network1026 via the network interface device 1020.

While the machine-readable medium 1022 is shown in an example embodimentto be a single medium, the term “machine-readable medium” should betaken to include a single medium or multiple media (e.g., a centralizedor distributed database, and/or associated caches and servers) thatstore the one or more sets of instructions. The term “machine-readablemedium” shall also be taken to include any medium that is capable ofstoring, encoding or carrying a set of instructions for execution by themachine and that cause the machine to perform any one or more of themethodologies of the present disclosure. The term “machine-readablemedium” shall accordingly be taken to include, but not be limited to,solid-state memories, optical and magnetic media, and carrier wavesignals.

A Three-Tier Architecture

In some embodiments, a method is illustrated as implemented in adistributed or non-distributed software application designed under athree-tier architecture paradigm, whereby the various components ofcomputer code that implement this method may be categorized as belongingto one or more of these three tiers. Some embodiments may include afirst tier as an interface (e.g., an interface tier) that is relativelyfree of application processing. Further, a second tier may be a logictier that performs application processing in the form oflogical/mathematical manipulations of data inputted through theinterface level, and communicates the results of theselogical/mathematical manipulations to the interface tier, and/or to abackend, or storage tier. These logical/mathematical manipulations mayrelate to certain business rules, or processes that govern the softwareapplication as a whole. A third, storage tier, may be a persistentstorage medium or, non-persistent storage medium. In some cases, one ormore of these tiers may be collapsed into another, resulting in atwo-tier architecture, or even a one-tier architecture. For example, theinterface and logic tiers may be consolidated, or the logic and storagetiers may be consolidated, as in the case of a software application withan embedded database. This three-tier architecture may be implementedusing one technology, or, as will be discussed below, a variety oftechnologies. This three-tier architecture, and the technologies throughwhich it is implemented, may be executed on two or more computer systemsorganized in a server-client, peer to peer, or so some other suitableconfiguration. Further, these three tiers may be distributed betweenmore than one computer system as various software components.

Modules, Components and Logic

Certain embodiments are described herein as including logic or a numberof modules, components or mechanisms. A module, logic, component ormechanism (herein after collectively referred to as a “module”) may be atangible unit capable of performing certain operations and is configuredor arranged in a certain manner. In example embodiments, one or morecomputer systems (e.g., a standalone, client or server computer system)or one or more components of a computer system (e.g., a processor or agroup of processors) may be configured by software (e.g., an applicationor application portion) as a “module” that operates to perform certainoperations as described herein.

In various embodiments, a “module” may be implemented mechanically orelectronically. For example, a module may comprise dedicated circuitryor logic that is permanently configured (e.g., within a special-purposeprocessor) to perform certain operations. A module may also compriseprogrammable logic or circuitry (e.g., as encompassed within ageneral-purpose processor or other programmable processor) that istemporarily configured by software to perform certain operations. Itwill be appreciated that the decision to implement a modulemechanically, in the dedicated and permanently configured circuitry, orin temporarily configured circuitry (e.g., configured by software) maybe driven by cost and time considerations.

Accordingly, the term “module” should be understood to encompass atangible entity, be that an entity that is physically constructed,permanently configured (e.g., hardwired) or temporarily configured(e.g., programmed) to operate in a certain manner and/or to performcertain operations described herein. Considering embodiments in whichmodules or components are temporarily configured (e.g., programmed),each of the modules or components need not be configured or instantiatedat any one instance in time. For example, where the modules orcomponents comprise a general-purpose processor configured usingsoftware, the general-purpose processor may be configured as respectivedifferent modules at different times. Software may accordingly configurethe processor to constitute a particular module at one instance of timeand to constitute a different module at a different instance of time.

Modules can provide information to, and receive information from, othermodules. Accordingly, the described modules may be regarded as beingcommunicatively coupled. Where multiple of such modules existcontemporaneously, communications may be achieved through signaltransmission (e.g., over appropriate circuits and buses) that connectthe modules. In embodiments in which multiple modules are configured orinstantiated at different times, communications between such modules maybe achieved, for example, through the storage and retrieval ofinformation in memory structures to which the multiple modules haveaccess. For example, a one module may perform an operation, and storethe output of that operation in a memory device to which it iscommunicatively coupled. A further module may then, at a later time,access the memory device to retrieve and process the stored output.Modules may also initiate communications with input or output devices,and can operate on a resource (e.g., a collection of information).

Component Design

Some example embodiments may include the above illustrated tiers, andprocesses or operations that make them up, as being written as one ormore software components. Common too many of these components is theability to generate, use, and manipulate data. These components, and thefunctionality associated with each, may be used by client, server, orpeer computer systems. These various components may be implemented by acomputer system on an as-needed basis. These components may be writtenin an object-oriented computer language such that a component oriented,or object-oriented programming technique can be implemented using aVisual Component Library (VCL), Component Library for Cross Platform(CLX), Java Beans (JB), Java Enterprise Beans (EJB), Component ObjectModel (COM), Distributed Component Object Model (DCOM), or othersuitable technique. These components may be linked to other componentsvia various Application Programming interfaces (APIs), and then compiledinto one complete server, client, and/or peer software application.Further, these APIs may be able to communicate through variousdistributed programming protocols as distributed computing components.

Distributed Computing Components and Protocols

Some example embodiments may include remote procedure calls being usedto implement one or more of the above illustrated components across adistributed programming environment as distributed computing components.For example, an interface component (e.g., an interface tier) may resideon a first computer system that is remotely located from a secondcomputer system containing a logic component (e.g., a logic tier). Thesefirst and second computer systems may be configured in a server-client,peer-to-peer, or some other suitable configuration. These variouscomponents may be written using the above illustrated object-orientedprogramming techniques, and can be written in the same programminglanguage, or a different programming language. Various protocols may beimplemented to enable these various components to communicate regardlessof the programming language used to write these components. For example,an component written in C++ may be able to communicate with anothercomponent written in the Java programming language through utilizing adistributed computing protocol such as a Common Object Request BrokerArchitecture (CORBA), a Simple Object Access Protocol (SOAP), or someother suitable protocol. Some embodiments may include the use of one ormore of these protocols with the various protocols outlined in the OSImodel, or TCP/IP protocol stack model for defining the protocols used bya network to transmit data.

A System of Transmission Between a Server and Client

Some embodiments may utilize the OSI model or TCP/IP protocol stackmodel for defining the protocols used by a network to transmit data. Inapplying these models, a system of data transmission between a serverand client, or between peer computer systems is illustrated as a seriesof roughly five layers comprising: an application layer, a transportlayer, a network layer, a data link layer, and a physical layer. In thecase of software having a three tier architecture, the various tiers(e.g., the interface, logic, and storage tiers) reside on theapplication layer of the TCP/IP protocol stack. In an exampleimplementation using the TCP/IP protocol stack model, data from anapplication residing at the application layer is loaded into the dataload field of a TCP segment residing at the transport layer. This TCPsegment also contains port information for a recipient softwareapplication residing remotely. This TCP segment is loaded into the dataload field of an IP datagram residing at the network layer. Next, thisIP datagram is loaded into a frame residing at the data link layer. Thisframe is then encoded at the physical layer, and the data transmittedover a network such as an internet, Local Area Network (LAN), Wide AreaNetwork (WAN), or some other suitable network. In some cases, internetrefers to a network of networks. These networks may use a variety ofprotocols for the exchange of data, including the aforementioned TCP/IP,and additionally ATM, SNA, SDI, or some other suitable protocol. Thesenetworks may be organized within a variety of topologies (e.g., a startopology), or structures.

The Abstract of the Disclosure is provided to comply with 37 C.F.R.§1.72(b), requiring an abstract that may allow the reader to quicklyascertain the nature of the technical disclosure. It is submitted withthe understanding that it may not be used to interpret or limit thescope or meaning of the claims. In addition, in the foregoing DetailedDescription, it can be seen that various features are grouped togetherin a single embodiment for the purpose of streamlining the disclosure.This method of disclosure is not to be interpreted as reflecting anintention that the claimed embodiments require more features than areexpressly recited in each claim. Rather, as the following claimsreflect, inventive subject matter lies in less than all features of asingle disclosed embodiment. Thus the following claims are herebyincorporated into the Detailed Description, with each claim standing onits own as a separate embodiment.

What is claimed is:
 1. A non-transitory machine-readable storage mediumstoring instructions that, when executed by at least one processor of amachine, cause the machine to perform operations comprising: receiving asearch request from a first user; causing presentation of a userinterface to a first user, the user interface displaying a search resultbased on the search request including information regarding an itemselected by the first user to be shared with a second user via anetwork-based social platform, the network-based social platform being aplatform that allows the first user to share information with otherusers of the network-based social platform based on a level of trust;receiving a selection of the second user from a plurality of userspresented on the user interface to the first user; accessing a profileof the first user to determine whether the first user is authorized toshare the information regarding the item on the network-based socialplatform with the second user; determining that the first user isauthorized to share the information regarding the item with the seconduser; and based on the determining that the first user is authorized toshare the information regarding the item with the second user, adding anidentifier for the item to a list of recommended items that isrecommended to the second user.
 2. The non-transitory machine-readablestorage medium of claim 1, wherein the item is a publication that ispublished to the network-based social platform.
 3. The non-transitorymachine-readable storage medium of claim 1, wherein the determiningcomprises determining that the first user is authorized to share theinformation based on relationship information in the profile of thefirst user that identifies a predetermined relationship between thefirst user and the second user on the network-based social platform. 4.The non-transitory machine-readable storage medium of claim 1, whereinthe search request comprises a keyword search request.
 5. Thenon-transitory machine-readable storage medium of claim 1, wherein theoperations further comprise: monitoring for a change to the informationregarding the item; and based on detecting the change, updating theinformation regarding the item being shared with the second user.
 6. Thenon-transitory machine-readable storage medium of claim 1, wherein theoperations further comprise: receiving a request from the second user toview the list; and based on the second user being authorized to view thelist, causing presentation of the list to a device of the second user.7. The non-transitory machine-readable storage medium of claim 1,wherein the operations further comprise causing presentation of the listin a user interface of the network-based social platform.
 8. Thenon-transitory machine-readable storage medium of claim 1, wherein thelevel of trust is based on a pre-established relationship that is storedin the profile of the first user at the network-based social platform.9. The non-transitory machine-readable storage medium of claim 1,wherein the item is a listing of a product for sale in a network-basedmarketplace, the adding the identifier for the item to the list ofrecommended items comprises adding the identifier for the item to awatch list used to monitor the item on the network-based socialplatform, and the operations further comprise monitoring for a change tothe information regarding the item and updating the watch list inresponse to detecting the change.
 10. A method comprising: receiving asearch request from a first user; causing presentation of a userinterface to a first user, the user interface displaying a search resultbased on the search request including information regarding an itemselected by the first user to be shared with a second user via anetwork-based social platform, the network-based social platform being aplatform that allows the first user to share information with otherusers of the network-based social platform based on a level of trust;receiving a selection of the second user from a plurality of userspresented on the user interface to the first user; accessing, by aprocessor of a machine, a profile of the first user to determine whetherthe first user is authorized to share the information regarding the itemon the network-based social platform with the second user; determiningthat the first user is authorized to share the information regarding theitem with the second user; and based on the determining that the firstuser is authorized to share the information regarding the item with thesecond user, adding an identifier for the item to a list of recommendeditems that is recommended to the second user.
 11. The method of claim10, wherein the item is a publication that is published to thenetwork-based social platform.
 12. The method of claim 10, wherein thedetermining comprises determining that the first user is authorized toshare the information based on relationship information in the profileof the first user that identifies a predetermined relationship betweenthe first user and the second user on the network-based social platform.13. The method of claim 10, wherein the search request comprises akeyword search request.
 14. The method of claim 10, further comprising:monitoring for a change to the information regarding the item; and basedon detecting the change, updating the information regarding the itembeing shared with the second user.
 15. The method of claim 10, furthercomprising: receiving a request from the second user to view the list;and based on the second user being authorized to view the list, causingpresentation of the list to a device of the second user.
 16. The methodof claim 10, further comprising causing presentation of the list in auser interface of the network-based social platform.
 17. The method ofclaim 10, wherein the level of trust is based on a pre-establishedrelationship that is stored in the profile of the first user at thenetwork-based social platform.
 18. A system comprising: means forreceiving a search request from a first user; means for causingpresentation of a user interface to a first user, the user interfacedisplaying a search result based on the search request includinginformation regarding an item selected by the first user to be sharedwith a second user via a network-based social platform, thenetwork-based social platform being a platform that allows the firstuser to share information with other users of the network-based socialplatform based on a level of trust; means for receiving a selection ofthe second user from a plurality of users presented on the userinterface to the first user; a processor of a machine configure todetermine that the first user is authorized to share the informationregarding the item on the network-based social platform with the seconduser based on a profile of the first user; and means for adding anidentifier for the item to a list of recommended items that isrecommended to the second user based on the first user being authorizedto share the information regarding the item with the second user.